package com.erb.constants;

import java.util.HashMap;
import java.util.Map;

public interface AdminProductConstants {
	/**
	 * 项目状态：项目招标中
	 */
	int PRODUCT_STATUS_BIDS = 1;
	/**
	 * 项目状态：(还款中)已满标
	 */
	int PRODUCT_STATUS_PAYMENT = 2;
	/**
	 * 项目状态：项目还款完毕
	 */
	int PRODUCT_STATUS_PAYMENT_COMPLETED = 3;

	/**
	 * 项目状态Map
	 */
	Map<Integer, String> PRODUCT_STATUS_MAP = new HashMap<Integer, String>(3) {
		private static final long serialVersionUID = 4109685391068424095L;

		{
			put(PRODUCT_STATUS_BIDS, "招标中");
			put(PRODUCT_STATUS_PAYMENT, "已满标");
			put(PRODUCT_STATUS_PAYMENT_COMPLETED, "还款完毕");
		}
	};

	/**
	 * 项目年华利率：投资项目最小利率
	 */
	int PRODUCT_RATE_MIN = 10;
	/**
	 * 项目年华利率：投资项目最大利率
	 */
	int PRODUCT_RATE_MAX = 20;

	/**
	 * 项目类型：新手标
	 */
	int PRODUCT_TYPE_NEW = 1;
	/**
	 * 项目类型：推荐标
	 */
	int PRODUCT_TYPE_RECOMMEND = 2;
	/**
	 * 项目类型：官方发布，默认
	 */
	int PRODUCT_TYPE_DEFAULT = 3;
	/**
	 * 项目类型：散标，贷款转换
	 */
	int PRODUCT_TYPE_CONVERSION_LOAN = 4;

	/**
	 * 项目类型map集合
	 */
	Map<Integer, String> PRODUCT_TYPE_MAP = new HashMap<Integer, String>(4) {
		private static final long serialVersionUID = 4109685391068424095L;

		{
			put(PRODUCT_TYPE_NEW, "新手标");
			put(PRODUCT_TYPE_RECOMMEND, "推荐标");
			put(PRODUCT_TYPE_DEFAULT, "普通标");
			put(PRODUCT_TYPE_CONVERSION_LOAN, "散标");
		}
	};

	/**
	 * 还款类型：到期还本付息
	 */
	int PRODUCT_REPAY_TYPE_END = 1;
	/**
	 * 还款类型：按月付息，到期还本
	 */
	int PRODUCT_REPAY_TYPE_END_MONTH = 2;
	/**
	 * 还款类型：等额本息
	 */
	int PRODUCT_REPAY_TYPE_MONTH = 3;

	/**
	 * 还款类型map集合
	 */
	Map<Integer, String> PRODUCT_REPAY_TYPE_MAP = new HashMap<Integer, String>(3) {
		private static final long serialVersionUID = 4109685391068424095L;

		{
			put(PRODUCT_REPAY_TYPE_END, "到期还本付息");
			put(PRODUCT_REPAY_TYPE_END_MONTH, "按月付息，到期还本");
			put(PRODUCT_REPAY_TYPE_MONTH, "等额本息");
		}
	};

	/**
	 * 项目可选锁定期
	 */
	int[] PRODUCT_LOCK_DATE_MONTH = {1, 3, 6, 9, 12, 24};

	/**
	 * 项目默认已投金额
	 */
	double PRODUCT_DEFAULT_HAVE_MONEY = 0.0;

	/**
	 * 项目最小起购金额，一百
	 */
	double PRODUCT_PURCHASE_AMOUNT = 100;

	/**
	 * 项目最小总金额，一万
	 */
	double PRODUCT_TOTAL_MIN = 10000;

	/**
	 * 项目最大总金额，一千万
	 */
	double PRODUCT_TOTAL_MAX = 10000000;
}
